(defun C:BIG-ARC (/             entity        ent-data      full-angle
                  delta-a       lambda-a      num-of-approx-lines
                  n
                 )
  (setq entity (entnext))
  (while entity
    (setq ent-data (entget entity))
    (if (= (cdr (assoc 0 ent-data)) "ARC")
      (if (>= (cdr (assoc 40 ent-data)) 4000.0)
        (progn
          (print "Big Arc Found!")
          (setq full-angle
                 (- (cdr (assoc 51 ent-data)) (cdr (assoc 50 ent-data)))
          )
          (setq delta-a (* (atan (/ 2.5 ; length of approx line / 2
                                    (sqrt (- (* (cdr (assoc 40 ent-data))
                                                (cdr (assoc 40 ent-data))
                                             )
                                             6.25 ; (* 2.5 2.5)
                                          )
                                    )
                                 )
                           )
                           2.0
                        )
          )
          (setq num-of-approx-lines (fix (/ full-angle delta-a)))
          (setq lambda-a (/ full-angle num-of-approx-lines))
          (setq n 0)
          (while (< n num-of-approx-lines)
            (entmake
              (list
                (cons '0 "LINE")
                (cons '10
                      (polar (cdr (assoc 10 ent-data))
                             (+ (cdr (assoc 50 ent-data)) (* lambda-a n))
                             (cdr (assoc 40 ent-data))
                      )
                )
                (cons '11
                      (polar (cdr (assoc 10 ent-data))
                             (+ (cdr (assoc 50 ent-data)) (* lambda-a (1+ n)))
                             (cdr (assoc 40 ent-data))
                      )
                )
              )
            )
            (setq n (1+ n))
          )
          (entdel entity)
        )
      )
    )
    (setq entity (entnext entity))
  )
  (princ)
)